/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package mx.itschapala.dsw2.biblioteca8a.BL;

import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import mx.itschapala.dsw2.biblioteca8a.Dao.UsuarioDaoLocal;
import mx.itschapala.dsw2.biblioteca8a.Enumeracion.EstadoServicio;
import mx.itschapala.dsw2.biblioteca8a.modelo.Usuario;

/**
 *
 * @author Raven
 */
@Stateless
public class UsuarioBL implements UsuarioBLLocal {
    @EJB
    private UsuarioDaoLocal usuarioDao;

 @Override
      public EstadoServicio register(Usuario user) {
         if (usuarioDao.findDuplicity(user)|| user.getId()==null) {
            //no se pudo hacer
            return EstadoServicio.INCOMPLETE;
        } else {
           usuarioDao.create(user);
            // ya lo hizo
            return EstadoServicio.COMPLETE;

        }
    }
    @Override
        public EstadoServicio modify(Usuario user) {
        if (user.getId() == null || usuarioDao.find(user.getId()) == null) {
            return EstadoServicio.INCOMPLETE;
        } else {
            usuarioDao.edit(user);
            return EstadoServicio.COMPLETE;
        }
    }
    @Override
            public EstadoServicio delete(Usuario user) {
         if (usuarioDao.find(user.getId()) == null || user.getId() == null) {

            return EstadoServicio.INCOMPLETE;
        } else {
            usuarioDao.remove(user);
            return EstadoServicio.COMPLETE;
        }
    }
    @Override
            public List<Usuario> getAll() {
        return usuarioDao.findAll();
    }

    @Override
    public Usuario findById(Integer id) {
        return usuarioDao.find(id);
    }
    
    
    
}
